from django.test import TestCase

# Create your tests here.
import jieba
import jieba.analyse

#第一步：分词，这里使用结巴分词全模式
text = '''新闻，也叫消息，是指报纸、电台、电视台、互联网经常使用的记录社会、传播信息、反映时代的一种文体，\
具有真实性、时效性、简洁性、可读性、准确性的特点。\
新闻概念有广义与狭义之分。\
就其广义而言，除了发表于报刊、广播、电视上的评论与专文外的常用文本都属于新闻之列，包括消息、通讯、特写、速写（有的将速写纳入特写之列）等等。\
狭义的新闻则专指消息，消息是用概括的叙述方式，比较简明扼要的文字，迅速及时地报道国内外新近发生的、有价值的的事实。\
新闻也分公众新闻和小道新闻等。每则新闻在结构上，一般包括标题、导语、主体、背景和结语五部分。\
前三者是主要部分，后二者是辅助部分。写法上主要是叙述，有时兼有议论、描写、评论等。
'''
fenci_text = jieba.cut(text)
#print("/ ".join(fenci_text))

# #第二步：去停用词
# #这里是有一个文件存放要改的文章，一个文件存放停用表，然后和停用表里的词比较，一样的就删掉，最后把结果存放在一个文件中
# stopwords = {}.fromkeys([ line.rstrip() for line in open('stopwords.txt') ])
# final = ""
# for word in fenci_text:
#     if word not in stopwords:
#         if (word != "。" and word != "，") :
#             final = final + " " + word
# print(final)

#第三步：提取关键词
a=jieba.analyse.extract_tags(text, topK = 5, withWeight = True, allowPOS = ())
b=jieba.analyse.extract_tags(text, topK = 6,   allowPOS = ())
print(a)
print(b)
#text 为待提取的文本
# topK:返回几个 TF/IDF 权重最大的关键词，默认值为20。
# withWeight:是否一并返回关键词权重值，默认值为False。
# allowPOS:仅包括指定词性的词，默认值为空，即不进行筛选。